package com.hy.service;


import com.google.protobuf.ServiceException;
import com.hy.medicine.dto.MedicineLikeDTO;
import com.hy.medicine.evaluation.dto.EvaluationReplyDTO;
import com.hy.medicine.evaluation.dto.MedicineEvaluationDTO;
import com.hy.medicine.evaluation.dto.MedicineEvaluationQuery;
import com.hy.medicine.evaluation.vo.EvaluationReplyVO;
import com.hy.medicine.evaluation.vo.MedicineEvaluationVO;
import com.hy.until.PageResult;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * @author 陌寒    Lenovo
 * @date 2025/3/16下午10:29
 * @description 类描述
 */
public interface MedicineEvaluationService {
    // 添加评价
    void addEvaluation(MedicineEvaluationDTO dto) throws Exception;

    // 获取评价列表
    PageResult<MedicineEvaluationVO> getEvaluationList(MedicineEvaluationQuery query);

    // 点赞/取消点赞
    void toggleLike(Integer evaluationId) throws ServiceException;


    // 添加回复
    void addReply(EvaluationReplyDTO dto) throws ServiceException;

    // 获取回复列表
    List<EvaluationReplyVO> getReplies(Integer evaluationId);

}
